package cn.quevo.cube.provide.define.service;

import cn.quevo.common.entity.PageResult;
import cn.quevo.cube.provide.define.entity.CubeBaseColumn;
import cn.quevo.cube.provide.define.entity.query.CubeBaseColumnQuery;

import java.util.Map;

/**
 * 模型字段 Service
 *
 * @author July july_sky@foxmail.com
 * @version 1.0
 * @date 2018/12/11 14:51:05
 * @Copyright 东方浩星（北京）传媒科技有限公司版权所有.All Rights Reserved.
 */
public interface CubeBaseColumnService {

    /**
     * 根据ID获取模型字段
     *
     * @param cubeBaseColumnQuery
     * @return
     * @author July july_sky@foxmail.com
     * @date 2018/12/11 14:51:05
     */
    Map<String,Object> getSinge(CubeBaseColumnQuery cubeBaseColumnQuery);

    /**
     * 创建模型字段
     *
     * @param cubeBaseColumn
     * @return
     * @author July july_sky@foxmail.com
     * @date 2018/12/11 14:51:05
     */
    Integer create(CubeBaseColumn cubeBaseColumn);

    /**
     * 更新模型字段
     *
     * @param cubeBaseColumn
     * @return
     * @author July july_sky@foxmail.com
     * @date 2018/12/11 14:51:05
     */
    Integer update(CubeBaseColumn cubeBaseColumn);

    /**
     * 分页获取模型字段
     *
     * @param cubeBaseColumnQuery
     * @return
     * @author July july_sky@foxmail.com
     * @date 2018/12/11 14:51:05
     */
    PageResult<Map<String,Object>> getPage(CubeBaseColumnQuery cubeBaseColumnQuery);
}
